perm filename RST.F4[P11,LCS] blob sn#585803 filedate 1981-05-12 generic text, type T, neo UTF8
	SUBROUTINE RST
	COMMON /INTGRS/JACC,JTAIL,JDOT
	COMMON R2,JA,CNTR,J2,R3,R4,R5,R6,R7,R8,R9,RJR(12),RX3
	1,J3,J4,J5,J6,J7,J8,J9
	1/LIMIT/LM,ITEM,LH,I,IX /STF/RF(8),RSTJ2 /XRN/RN(1)
      COMMON/PLTR/IPLT,RHT,DIS,XDIS /POSI/STFF(0/7),JJ2,POS
C  ITEMS IN FOLLOWING COMMON BLOCK ARE USED IN 'TAILS' AND 'FERM'
      COMMON/ALF/INP(46),RST7,RST3,RSTX,RMINI,RINV,RA,RX,RJX,RJY,
     1 RB,RJW,RZ,JX,RG,KL,RJAC,K,L,RQ,RH,J5X,RXX,JJJ
 
      IF(IABS(J4).LT.480)GO TO 22
	CALL EXTRA
C  P4+500= USER-ADDED RESTS
      RETURN
22	IF(J6.LT.0)RETURN
C J6=-1= INVIS. RESTS NEEDED IN 'PARTS' PROGRAM
	IF(R9.EQ.0)GO TO 302
	IF(R9.GT.0)GO TO 2

	J9=0
C USE R9 FOR CENTERING. ORIG. P3 IS BASIC POS.
C J9=0 NEEDED FOR CENTERED ./. REPEAT SIGN.**********
C IF R9<0 CENTERING WILL BE DONE IN RSTCEN
C FOR CENTERING WHOLE RESTS
	X=1000
C FINAL POSITION WILL BE 1/2 WAY FROM 1ST NOTE POS. TO BARLINE.
	DO 1 K=1,ITEM
	IF(CODN(K,L).NE.4)GO TO 1
	IF(RN(L).GT.2)GO TO 1
C FIND ONLY BARLINES (WDCNT=1)
	A=RN(L+3)
	IF(A.LT.X.AND.A.GT.RX3)X=A
1	CONTINUE
	IF(X.NE.1000)R9=RX3+(X-RX3)/2.-3.0*RSTJ2
C RX3 HAS IMPORTANT POS. INFO FOR NTS.
	IF(IPLT.GT.0)GO TO 2
	K=I
	IF(IPLT.NE.0)K=IX
C PUT R9 INTO NEW PLACE IN XRN
	RN(K-1)=R9
2	R3=RHORZ(R9)
	R9=0
C R9=0  SO LEDGER LINE FEATURE DOESN'T GET CONFUSED.

302   IF(R8.EQ.-3)R8=0
	 IF(R8.NE.0.AND.J5.NE.-3)J5=-2
C R8=-4 OR -5 MAKES REPEAT BAR SIGN
C R8=-3 IS FOR 'PAGE' PROGRAM
C SO THAT REST SHAPES ARE NOT CHANGED IN FULL BAR REST.
C R8 PUTS NUM OVER WHL RST ONLY. R5=-3 PUTS DBL WHL UNDER REST.
      IF(J5.GT.1)R4=R4-2.
      R7=R6*10.
C  FOR DOTS
      IF(J5.GE.2)R3=R3-3.0*RSTJ2
C  SHIFTS 1/16 AND SMALLER RESTS .5 TO LEFT
202	CALL REST
      IF(J5.GT.1)GO TO 200
      IF(R7.EQ.0)RETURN
201   RA=20.7
      R6=0
      IF(J5.LT.0)RA=25.7
      RJX=R3+RA*RMINI
C RJX HAS HOROZ. POS. FOR DOTIT ROUTINE.
      R4=8.+R4
      J5=7
C P6=1 THE REST IS DOTTED
	JDOT=J6
	CALL CENTX
	CALL DOTIT
	RETURN
200   J5=J5-1
C  FOR MULTIPLE TAILS ON 16TH REST, ETC.
      R4=R4+2.
      CALL RJBX(4.3)
      GO TO 202
	END